package com.itheima.d5_block.test;

/*
静态代码块:
    格式：static { }   类中方法外
    特点：类加载时自动执行，由于类只会加载一次，所以静态代码块也只会执行一次。
    作用：完成类的初始化，例如：对类变量的初始化赋值。

实例代码块:
    格式：{ }   类中方法外
    特点：每次创建对象时，执行实例代码块，并在构造器前执行。
    作用：和构造器一样，都是用来完成对象的初始化的，例如：对实例变量进行初始化赋值。
 */
public class Student {
    static int number = 80;
    static String schoolName;

    // 静态代码块
    static {
        schoolName = "黑马";
        System.out.println("我是静态代码块！");
    }

    // 实例代码块
    {
        System.out.println("我是实例代码块");
        schoolName = "传智";
    }

    //无参构造方法
    public Student() {
        //schoolName = "传智";
        System.out.println("无参构造方法执行~~~");
    }

    public Student(String name) {
        // schoolName = "传智";
        System.out.println(name + "有参构造方法执行~~~");
    }
}
